<html>
<head><title>w3m manual</title>
</head>
<body>
<h1>w3m マニュアル</h1>
<div align=right>
伊藤 彰則<br>
aito@fw.ipsj.or.jp
</div>
<h2>もくじ</h2>
<menu>
<li><a href="#Introduction">はじめに</a>
<li><a href="#Options">起動オプション</a>
<li><a href="#Color">文書の表示内容</a>
<li><a href="#Key:orig">起動後の使いかた(オリジナル)</a>
<li><a href="#Key:lynx">起動後の使いかた(Lynx風)</a>
<li><a href="#Mouse">マウス操作</a>
<li><a href="#Key:custom">キーの定義</a>
<li><a href="#LocalCGI">Local CGI</a>
</menu>
<hr>
<a name="Introduction"></a>
<h2>はじめに</h2>
w3m は，テキストベースのページャ/WWWブラウザです．これを使うと，kterm などのキャラクタ
端末上で，ローカルファイルを見たり，WWWの内容を見たりすることができます．

<hr>
<a name="Options"></a>
<h2>起動オプション</h2>

起動時の引数は次の通りです．
<p>
<pre>
    w3m [options] [file|URL]
</pre>
<P>
引数にファイル名を指定すればそのファイルを表示し，URLを指定すればその内容を表示します．
何も指定しなければ，標準入力の内容を表示します．ただし，標準入力が tty である場合には，
何もせずに終了します．
<p>
オプションは次の通りです．
<dl>
<dt>+番号
<dd>起動後，指定の行番号に移動する．
<dt>-t 幅
<dd>タブの幅を指定する．デフォルトは 8 ．
<dt>-r
<dd>text/plain の文書を表示する場合，重ね打ちによる強調文字を表示しない．
このオプションを付けない場合，``A^H_''はAのアンダーラインとして表示され，
``A^HA''はAのボールドとして表示される．
<dt>-l 行数
<dd>標準入力の内容を表示するときに保存される最大行数を指定す
る．デフォルトは 10000．
<dt>-O 文字コード
<dd>表示に用いる文字コードを指定する．
<dt>-I 文字コード
<dd>入力文書の文字コードを指定する．
<dt>-T タイプ
<dd>表示する文書のタイプを指定する．この指定がない場合，ファイル
名の拡張子によって自動判別される．判別できない場合は text/plain
とみなされる．<p>
例：<br>
標準入力から HTML ファイルを読んで表示する
<pre>
   cat hoge.html | w3m -T text/html
</pre>
<p>
HTMLファイルのソースを表示する
<pre>
   w3m -T text/plain hoge.html
</pre>
<dt>-m
<dd>Internet message モードで表示する．Internet messageモードの場合，
ヘッダの内容を見て，Content-Type: があればそれを参考にする．電子メールや
ネットニュースの記事を読むときに便利．
<dt>-v
<dd>スタートアップページを表示する．
<dt>-B
<dd>Bookmark を表示する．
<dt>-bookmark file
<dd>Bookmarkのファイルを指定する．
<dt>-M
<dd>カラー表示をしない．
<dt>-F
<dd>フレームを自動表示する．
<dt>-s
<dd>連続する空行を1行にまとめて表示する．
<dt>-X
<dd>w3m終了時に，以前の画面に戻らない．
<dt>-W
<dd>折り返しサーチを使うかどうかを切りかえる．
<dt>-o option=value
<dd>オプションを指定する．
オプションの名前や値は，~/.w3m/config で指定するものと同じ．
<dt>-no-proxy
<dd>プロキシを利用しない．
<dt>-no-mouse
<dd>マウスを利用しない．
<dt>-cookie
<dd>クッキーを処理する．
<dt>-no-cookie
<dd>クッキーを処理しない．
<dt>-num
<dd>行番号を表示する．
<dt>-dump
<dd>URLの内容を読みこみ，整形されたバッファの内容を標準出力に書き出す．
文書の幅は80桁と仮定される．この幅は，次の -cols オプションで変更可能．
<dt>-cols 幅
<dd>-dump オプションを使う場合に，文書の幅を指定する．
<dt>-ppc ピクセル数
<dd>文字の幅を指定する．デフォルトはウインドウの大きさから自動的に計算する．
<dt>-ppl ピクセル数
<dd>文字の縦幅を指定する．デフォルトはウインドウの大きさから自動的に計算する．
<dt>-dump_source
<dd>URLの内容を読みこみ，整形せずに標準出力に書き出す．
漢字コード変換もされない．
<dt>-dump_head
<dd>URLにアクセスし，ヘッダ情報を出力する．
<dt>-dump_both
<dd>URLにアクセスし，ヘッダ情報とHTMLソースを出力する．
<dt>-dump_extra
<dd>URLにアクセスし，拡張情報とヘッダ情報とHTMLソースを出力する．
<dt>-post file
<dd>ファイルの内容をPOSTする．
<dt>-header string
<dd>HTTP要求ヘッダを追加する．
<dt>-config file
<dd>configのファイルを指定する．
</dl>

<hr>
<a name="Color"></a>
<h2>文書の表示内容</h2>

HTML文書を表示しているときには，次のような表示になります．
<div align="center">
<table border="1">
<tr><th></th><th>カラー表示時</th><th>白黒表示時</th></tr>
<tr><td>リンク</td><td>青色</td><td>下線</td></tr>
<tr><td>インライン画像</td><td>緑色</td><td>反転表示</td></tr>
<tr><td>FORMの入力部分</td><td>赤色</td><td>反転表示</td></tr>
</table>
</div>
カラー表示時の色は，オプション設定パネル "o" で変更することができます．

<hr>
<a name="Key:orig"></a>
<h2>起動後の使いかた(オリジナル)</h2>

起動した後は，1文字のコマンドをキーボードから入力することでw3mを操作します．
コマンドには次のようなものがあります．以下の記述では，C-x はコントロールx
を表します．また，SPC はスペースバー，RET はリターンキー，ESC はエスケープキーです．
<P>
ここで書いてあるのは，オリジナル版のキー操作です．Lynx風のキー操作用に
コンパイルしてあるものについては，<a href="#Key:lynx">起動後の使い方(Lynx風)</a>
をごらんください．

<H3>ページ/カーソル移動</H3>
<table>
<TR><TD>SPC,C-v<TD>次のページを表示します．
<TR><TD>b,ESC v<TD>前のページを表示します．
<TR><TD>l,C-f,右矢印キー<TD>カーソルを右に移動します．
<TR><TD>h,C-b,左矢印キー<TD>カーソルを左に移動します．
<TR><TD>j,C-n,下矢印キー<TD>カーソルを下に移動します．
<TR><TD>k,C-p,上矢印キー<TD>カーソルを上に移動します．
<TR><TD>J<TD>画面を1行上にスクロールします．
<TR><TD>K<TD>画面を1行下にスクロールします．
<TR><TD>^,C-a<TD>行頭に移動します．
<TR><TD>$,C-e<TD>行末に移動します．
<TR><TD>w<TD>次の単語に移動します．
<TR><TD>W<TD>前の単語に移動します．
<TR><TD>&gt;<TD>画面全体を右にずらします．(表示内容を左にずらす)
<TR><TD>&lt;<TD>画面全体を左にずらします．(表示内容を右にずらす)
<TR><TD>.<TD>画面全体を1文字右にずらします．(表示内容を左にずらす)
<TR><TD>,<TD>画面全体を1文字左にずらします．(表示内容を右にずらす)
<TR><TD>g,M-&lt;<TD>文書のいちばん上の行に移動します．
<TR><TD>G,M-&gt;<TD>文書のいちばん下の行に移動します．
<TR><TD>ESC g<TD>画面下で行番号を入力し，そこで指定した行に移動します．
ここで $ を入力すると，最終行に移動します．
<TR><TD>Z<TD>カーソルのある位置を行の中央に移動します．
<TR><TD>z<TD>カーソルのある行を画面の中央に移動します．
<TR><TD>TAB<TD>次のリンクに移動します．
<TR><TD>C-u, ESC TAB<TD>前のリンクに移動します．
<TR><TD>[<TD>最初のリンクに移動します．
<TR><TD>]<TD>最後のリンクに移動します．
</table>

<H3>ハイパーリンク操作</H3>
<table>
<TR><TD WIDTH=100>RET<TD>現在カーソルがあるリンクが指す先の文書を読みこみます．
<TR><TD>a, ESC RET<TD>現在カーソルがあるリンクが指す先の文書をファイルに保存します．
<TR><TD>u<TD>現在カーソルがあるリンクが指す先のURLを表示します．
<TR><TD>i<TD>リンクに関連付けられた画像へのURLの表示します．
<TR><TD>I<TD>現在カーソルがあるリンクに対応する画像を表示します．
<TR><TD>ESC I<TD>現在カーソルがあるリンクが指す
画像をファイルに保存します．
<TR><TD>:<TD>URL風の文字列をリンクにします．この機能は，HTMLでない文書を
読んでいるときにも有効です．
<TR><TD>ESC :<TD>Message-ID風の文字列を，news: のリンクにします．この機能は，HTMLでない文書を
読んでいるときにも有効です．
<TR><TD>c<TD>現在の文書のURLを表示します．
<TR><TD>=<TD>現在の文書に関する情報を表示します．
<TR><TD>C-g<TD>ページ中での現在位置を表示します．
<TR><TD>C-h<TD>URL履歴を表示します．
<TR><TD>F<TD>&lt;FRAMESET&gt;を含む文書を表示しているときに，&lt;FRAME&gt;
タグの指す複数の文書を1つの文書に変換して表示します．
<TR><TD>M<TD>現在見ているページを，外部ブラウザを使って表示します．
2M, 3M, ..., 9M で2番目，3番目，9番目のブラウザを使います．
<TR><TD>ESC M<TD>現在のリンク先を，外部ブラウザを使って表示します．
2ESC M, 3ESC M, ..., 9ESC M で2番目，3番目，9番目のブラウザを使います．
</table>

<H3>ファイルとURL関係の操作</H3>
<table>
<TR><TD WIDTH=100>U<TD>URLを指定して開きます．
<TR><TD>V<TD>ローカルファイルを指定して開きます．
<TR><TD>@<TD>コマンドを実行し，結果を全部読んでから表示します．
<TR><TD>#<TD>コマンドを実行し，結果を読みこみながら表示します．
</table>

<H3>バッファ操作</H3>
<table>
<TR><TD WIDTH=100>B<TD>現在見ているバッファを削除し，一つ前のバッファを表示します．
<TR><TD>v<TD>HTMLのソースを表示します．
<TR><TD>s<TD>バッファ選択モードに入ります．
<TR><TD>E<TD>現在見ているバッファがローカルファイルの場合，そのファイルをエディタ
で編集します．エディタを終了した後，そのファイルを再度読み込みます．
<TR><TD>C-l<TD>画面を再描画します．
<TR><TD>R<TD>バッファを再度読み込みます．
<TR><TD>S<TD>バッファの表示内容をファイルに保存します．
<TR><TD>ESC s<TD>HTMLのソースをファイルに保存します．v でソースを表示して S で
保存するのとほぼ同じですが，ESC s で保存したファイルは漢字コードがオリジナルの
ままであるのに対して，v S で保存すると現在表示に使っている漢字コードに変換され
て保存されます．
<TR><TD>ESC e<TD>現在表示されているバッファを，表示されている形式のまま
エディタで編集します．
</table>

<H3>バッファ選択モード</H3>
"s" でバッファ選択モードに入ったときのキー操作です．
<table>
<TR><TD WIDTH=100>k,C-p<TD>一つ上のバッファを選択します．
<TR><TD>j,C-n<TD>一つ下のバッファを選択します．
<TR><TD>D<TD>現在選択しているバッファを削除します．
<TR><TD>RET<TD>現在選択しているバッファを表示します．
</table>

<H3>ブックマーク操作</H3>
<table>
<TR><TD WIDTH=100>ESC b<TD>ブックマークを読み込みます．
<TR><TD>ESC a<TD>現在見ているページをブックマークに追加します．
</table>

<H3>検索</H3>
<table>
<TR><TD WIDTH=100>/,C-s<TD>現在のカーソル位置からファイル末尾に向かって正規表現を検索します．
<TR><TD>?,C-r<TD>現在のカーソル位置からファイルの先頭に向かって正規表現を検索します．
<TR><TD>n<TD>次を検索します．
<TR><TD>N<TD>前を検索します．
<TR><TD>C-w<TD>折り返し検索モードを切り換えます．
</table>

<H3>マーク操作</H3>
<table>
<TR><TD WIDTH=100>C-SPC<TD>マークを設定／解除します．マークは反転表示されます．
<TR><TD>ESC p<TD>一つ前のマークに移動します．
<TR><TD>ESC n<TD>一つ後のマークに移動します．
<TR><TD>"<TD>正規表現で指定された文字列を全てマークします．
</table>

<H3>その他</H3>
<table>
<TR><TD WIDTH=100>!<TD>シェルコマンドを実行します．
<TR><TD>H<TD>ヘルプファイルを表示します．
<TR><TD>o<TD>オプション設定パネルを表示します．
<TR><TD>C-k<TD>クッキー一覧を表示します．
<TR><TD>C-c<TD>文書の読み込みを中断します．
<TR><TD>C-z<TD>サスペンド
<TR><TD>q<TD>w3mを終了します．オプションの設定によって，終了するかどうか確認します．
<TR><TD>Q<TD>確認せずにw3mを終了します．
</table>

<H3>行編集</H3>
画面の最下行で文字列を入力する場合に有効なキー操作です．
<table>
<TR><TD WIDTH=100>C-f<TD>カーソルを右に移動します．
<TR><TD>C-b<TD>カーソルを左に移動します．
<TR><TD>C-h<TD>カーソルの直前の文字を削除します．
<TR><TD>C-d<TD>カーソル位置の文字を削除します．
<TR><TD>C-k<TD>カーソル位置から後を削除します．
<TR><TD>C-u<TD>カーソル位置から前を削除します．
<TR><TD>C-a<TD>文字列の先頭に移動します．
<TR><TD>C-e<TD>文字列の最後に移動します．
<TR><TD>C-p<TD>ヒストリから一つ前の文字列を取り出します．
<TR><TD>C-n<TD>ヒストリから次の文字列を取り出します．
<TR><TD>TAB,SPC<TD>ファイル名入力時に，ファイル名を補完します．
<TR><TD>RETURN<TD>入力を終了します．
</table>

<hr>
<a name="Key:lynx"></a>
<h2>起動後の使いかた(Lynx風)</h2>
Lynx風キーバインドでコンパイルした場合の使いかたです．
<H3>ページ/カーソル移動</H3>
<table>
<TR><TD>SPC,C-v,+<TD>次のページを表示します．
<TR><TD>b,ESC v,-<TD>前のページを表示します．
<TR><TD>l<TD>カーソルを右に移動します．
<TR><TD>h<TD>カーソルを左に移動します．
<TR><TD>j<TD>カーソルを下に移動します．
<TR><TD>k<TD>カーソルを上に移動します．
<TR><TD>J<TD>画面を1行上にスクロールします．
<TR><TD>K<TD>画面を1行下にスクロールします．
<TR><TD>^<TD>行頭に移動します．
<TR><TD>$<TD>行末に移動します．
<TR><TD>&gt;<TD>画面全体を右にずらします．(表示内容を左にずらす)
<TR><TD>&lt;<TD>画面全体を左にずらします．(表示内容を右にずらす)
<TR><TD>C-a<TD>文書のいちばん上の行に移動します．
<TR><TD>C-e<TD>文書のいちばん下の行に移動します．
<TR><TD>G<TD>画面下で行番号を入力し，そこで指定した行に移動します．
ここで $ を入力すると，最終行に移動します．
<TR><TD>Z<TD>カーソルのある位置を行の中央に移動します．
<TR><TD>z<TD>カーソルのある行を画面の中央に移動します．
<TR><TD>TAB, C-n, 下矢印<TD>次のリンクに移動します．
<TR><TD>ESC TAB, C-p, 上矢印<TD>前のリンクに移動します．
<TR><TD>C-g<TD>ページ中での現在位置を表示します．
</table>

<H3>ハイパーリンク操作</H3>
<table>
<TR><TD WIDTH=100>RET, C-f, 右矢印<TD>現在カーソルがあるリンクが指す先の文書を読みこみます．
<TR><TD>d, ESC RET<TD>現在カーソルがあるリンクが指す先の文書をファイルに保存します．
<TR><TD>u<TD>現在カーソルがあるリンクが指す先のURLを表示します．
<TR><TD>i<TD>現在カーソルがあるリンクを含む画像そのもののURLを表示します．
<TR><TD>I<TD>現在カーソルがあるリンクに対応する画像を表示します．
<TR><TD>ESC I<TD>現在カーソルがあるリンクが指す画像をファイルに保存します．
<TR><TD>:<TD>URL風の文字列をリンクにします．この機能は，HTMLでない文書を
読んでいるときにも有効です．
<TR><TD>ESC :<TD>Message-ID風の文字列を，news: のリンクにします．この機能は，HTMLでない文書を読んでいるときにも有効です．
<TR><TD>c<TD>現在の文書のURLを表示します．
<TR><TD>=<TD>現在の文書に関する情報を表示します．
<TR><TD>C-h<TD>URL履歴を表示します．
<TR><TD>F<TD>&lt;FRAMESET&gt;を含む文書を表示しているときに，&lt;FRAME&gt;
タグの指す複数の文書を1つの文書に変換して表示します．
<TR><TD>M<TD>現在見ているページを，外部ブラウザを使って表示します．
2M, 3M, ..., 9M で2番目，3番目，9番目のブラウザを使います．
<TR><TD>ESC M<TD>現在のリンク先を，外部ブラウザを使って表示します．
2ESC M, 3ESC M, ..., 9ESC M で2番目，3番目，9番目のブラウザを使います．
</table>

<H3>ファイルとURL関係の操作</H3>
<table>
<TR><TD WIDTH=100>g, U<TD>URLを指定して開きます．
<TR><TD>V<TD>ローカルファイルを指定して開きます．
<TR><TD>@<TD>コマンドを実行し，結果を全部読んでから表示します．
<TR><TD>#<TD>コマンドを実行し，結果を読みこみながら表示します．
</table>

<H3>バッファ操作</H3>
<table>
<TR><TD WIDTH=100>B, C-b, 左矢印<TD>現在見ているバッファを削除し，一つ前のバッファを表示します．
<TR><TD>\<TD>HTMLのソースを表示します．
<TR><TD>s<TD>バッファ選択モードに入ります．
<TR><TD>E<TD>現在見ているバッファがローカルファイルの場合，そのファイルをエディタで編集します．エディタを終了した後，そのファイルを再度読み込みます．
<TR><TD>C-l, C-w<TD>画面を再描画します．
<TR><TD>R, C-r<TD>バッファを再度読み込みます．
<TR><TD>S, p<TD>バッファの表示内容をファイルに保存します．
<TR><TD>ESC s<TD>HTMLのソースをファイルに保存します．v でソースを表示して S で
保存するのとほぼ同じですが，ESC s で保存したファイルは漢字コードがオリジナルの
ままであるのに対して，v S で保存すると現在表示に使っている漢字コードに変換され
て保存されます．
<TR><TD>ESC e<TD>現在表示されているバッファを，表示されている形式のまま
エディタで編集します．
</table>

<H3>バッファ選択モード</H3>
"s" でバッファ選択モードに入ったときのキー操作です．
<table>
<TR><TD WIDTH=100>k,C-p<TD>一つ上のバッファを選択します．
<TR><TD>j,C-n<TD>一つ下のバッファを選択します．
<TR><TD>D<TD>現在選択しているバッファを削除します．
<TR><TD>RET<TD>現在選択しているバッファを表示します．
</table>

<H3>ブックマーク操作</H3>
<table>
<TR><TD WIDTH=100>v, ESC b<TD>ブックマークを読み込みます．
<TR><TD>a, ESC a<TD>現在見ているページをブックマークに追加します．
</table>

<H3>検索</H3>
<table>
<TR><TD WIDTH=100>/,C-s<TD>現在のカーソル位置からファイル末尾に向かって正規表現を検索します．
<TR><TD>n<TD>次を検索します．
<TR><TD>w<TD>折り返し検索モードを切り換えます．
</table>

<H3>マーク操作</H3>
<table>
<TR><TD WIDTH=100>C-SPC<TD>マークを設定／解除します．マークは反転表示されます．
<TR><TD>P<TD>一つ前のマークに移動します．
<TR><TD>N<TD>一つ後のマークに移動します．
<TR><TD>"<TD>正規表現で指定された文字列を全てマークします．
</table>

<H3>その他</H3>
<table>
<TR><TD WIDTH=100>!<TD>シェルコマンドを実行します．
<TR><TD>H, ?<TD>ヘルプファイルを表示します．
<TR><TD>o<TD>オプション設定パネルを表示します．
<TR><TD>C-k<TD>クッキー一覧を表示します．
<TR><TD>C-c<TD>文書の読み込みを中断します．
<TR><TD>C-z<TD>サスペンド
<TR><TD>q<TD>w3mを終了します．オプションの設定によって，終了するかどうか確認します．
<TR><TD>Q<TD>確認せずにw3mを終了します．
</table>

<H3>行編集</H3>
画面の最下行で文字列を入力する場合に有効なキー操作です．
<table>
<TR><TD WIDTH=100>C-f<TD>カーソルを右に移動します．
<TR><TD>C-b<TD>カーソルを左に移動します．
<TR><TD>C-h<TD>カーソルの直前の文字を削除します．
<TR><TD>C-d<TD>カーソル位置の文字を削除します．
<TR><TD>C-k<TD>カーソル位置から後を削除します．
<TR><TD>C-u<TD>カーソル位置から前を削除します．
<TR><TD>C-a<TD>文字列の先頭に移動します．
<TR><TD>C-e<TD>文字列の最後に移動します．
<TR><TD>SPC<TD>ファイル名入力時に，ファイル名を補完します．
<TR><TD>RETURN<TD>入力を終了します．
</table>

<hr>
<a name="Mouse"></a>
<h2>マウス操作</h2>
マウス機能をONにしてコンパイルしてあれば，マウスを使って
w3mを操作することができます．マウスが使えるのは，xterm/kterm/rxvt
を使っている場合(この場合には，環境変数TERMを xterm か kterm に
設定する必要があります)，または GPM が動いている環境を使っている場合
です．

<p>
<table border=0>
<tr><td>左クリック
<td>カーソルをマウスカーソルの位置に移動します．
もしカーソルとマウスカーソルの位置が同じで，カーソルが
リンクの上にあったときは，そのリンクをたどります．
<tr><td>中クリック
<td>前のバッファに戻ります．
<tr><td>右クリック
<td>メニューを開きます．メニューの項目もマウスで選ぶことができます．
<tr><td>左ドラッグ
<td>ページをスクロールします．デフォルトの動作では，
マウスのドラッグに合わせて文書の方をスクロールします．
オプション設定パネルの設定で，この動作を逆にすること
ができます(マウスのドラッグに合わせて，ウィンドウの方を
スクロールする)．
</table>
<p>


<hr>
<a name="Key:custom"></a>
<h2>キーの定義</h2>
~/.w3m/keymap を記述すると，キーの割りあてを変えることができます
(行編集のキー定義を除く)．例えば，
<pre>

   keymap C-o NEXT_PAGE

</pre>
と記述すると，NEXT_PAGE機能(通常スペースと C-v)に割りあてられて
いるもの)を C-o に割りあてることができます．
利用可能な機能と，その名前については，
<a href="README.func">README.func</a>を参照してください．
例として，オリジナルとLynx風のキー定義ファイル
(<a href="keymap.default">keymap.default</a>
と<a href="keymap.lynx">keymap.lynx</a>)が置いてあります．

<hr>
<a name="LocalCGI"></a>
<h2>Local CGI</h2>
w3mを使えば，HTTPサーバなしでCGIスクリプトを起動することができます．
このとき，w3mがサーバのふりをしてスクリプトを起動し，その出力を
読みこんで表示するわけです．
ブックマークの登録と外部ビューアの編集
は，local CGIのスクリプトとして実現されています．
local CGIを使えば，w3mを汎用のフォーム入力インタフェースとして
使うことができます．
<P>
セキュリティ上の理由により，起動するCGIスクリプトは，次のどれかの
ディレクトリにある必要があります．
<ul>
<li>w3mのヘルプファイルなどが置いてあるディレクトリ
(典型的には /usr/local/lib/w3m)．このディレクトリは，
$LIB で参照することができます．
<li>/cgi-bin/ ディレクトリ．このディレクトリは，任意の場所に
割りあてることができます(オプション設定パネルの「/cgi-binで表される
ディレクトリ」の項目)．ここには，: で区切って複数のディレクトリを
指定することができます(例えば /usr/local/cgi-bin:/home/aito/cgi-bin など)．
/cgi-bin/ を使う場合は、
<pre>
  w3m -o cgi_bin=/path/to/cgi-bin file:/cgi-bin/script.cgi
</pre>
のように file:/cgi-binというURLを使う必要があります。
この中にカレントディレクトリを入れることは，セキュリティ上の理由により
薦められません．
</ul>
<p>
Local CGIとして使われるスクリプトでは，w3mをコントロールするために，
特殊なヘッダ `w3m-control:' を使うことができます．このヘッダには，
w3mの任意の機能 (<a href="README.func">README.func</a>参照)を書く
ことができます．文書が表示された後，その機能が呼び出されます．
例えば，
<pre>

Content-Type: text/plain
W3m-control: BACK

</pre>
というヘッダを出力した場合，w3mは空のページを表示し，その直後に
そのバッファを削除します．これは，CGIを実行した後で，何もページを
表示したくない場合に有効です．また，
<pre>

Content-Type: text/plain
W3m-control: DELETE_PREVBUF

contents.....
</pre>
は，新しいバッファで直前のバッファを置きかえます．
<p>
一つの w3m-control: ヘッダには，一つの機能だけを指定することができます．
ただし，HTTPレスポンスの中に複数の w3m-control: を入れることができ，
そこで指定された機能は順番に実行されます．
さらに，GOTO には引数を指定することができます．
<pre>

Content-Type: text/plain
W3m-control: GOTO http://www.yahoo.com/

</pre>
この例は，Location: を使った次の例と同じように動作します．
<pre>

Content-Type: text/plain
Location: http://www.yahoo.com/

</pre>
ただし，w3m-control: ヘッダはw3mがスクリプトを直接呼びだした時だけに
有効です．同じスクリプトを HTTPサーバ経由で呼びだした場合，
w3m-control: ヘッダは無視されます．

</body>
</html>
